/*
 * Copyright (c) 2021-2025 HPMicro
 *
 * SPDX-License-Identifier: BSD-3-Clause
 *
 */


#ifndef HPM_SOC_IRQ_H
#define HPM_SOC_IRQ_H


/* List of external IRQs */
#define IRQn_GPIO0_A                   1       /* GPIO0_A IRQ */
#define IRQn_GPIO0_B                   2       /* GPIO0_B IRQ */
#define IRQn_GPIO0_X                   3       /* GPIO0_X IRQ */
#define IRQn_GPIO0_Y                   4       /* GPIO0_Y IRQ */
#define IRQn_GPTMR0                    5       /* GPTMR0 IRQ */
#define IRQn_GPTMR1                    6       /* GPTMR1 IRQ */
#define IRQn_GPTMR2                    7       /* GPTMR2 IRQ */
#define IRQn_GPTMR3                    8       /* GPTMR3 IRQ */
#define IRQn_UART0                     13      /* UART0 IRQ */
#define IRQn_UART1                     14      /* UART1 IRQ */
#define IRQn_UART2                     15      /* UART2 IRQ */
#define IRQn_UART3                     16      /* UART3 IRQ */
#define IRQn_UART4                     17      /* UART4 IRQ */
#define IRQn_UART5                     18      /* UART5 IRQ */
#define IRQn_UART6                     19      /* UART6 IRQ */
#define IRQn_UART7                     20      /* UART7 IRQ */
#define IRQn_I2C0                      21      /* I2C0 IRQ */
#define IRQn_I2C1                      22      /* I2C1 IRQ */
#define IRQn_I2C2                      23      /* I2C2 IRQ */
#define IRQn_I2C3                      24      /* I2C3 IRQ */
#define IRQn_SPI0                      25      /* SPI0 IRQ */
#define IRQn_SPI1                      26      /* SPI1 IRQ */
#define IRQn_SPI2                      27      /* SPI2 IRQ */
#define IRQn_SPI3                      28      /* SPI3 IRQ */
#define IRQn_TSNS                      29      /* TSNS IRQ */
#define IRQn_MBX0A                     30      /* MBX0A IRQ */
#define IRQn_MBX0B                     31      /* MBX0B IRQ */
#define IRQn_EWDG0                     32      /* EWDG0 IRQ */
#define IRQn_EWDG1                     33      /* EWDG1 IRQ */
#define IRQn_HDMA                      34      /* HDMA IRQ */
#define IRQn_MCAN0                     35      /* MCAN0 IRQ */
#define IRQn_MCAN1                     36      /* MCAN1 IRQ */
#define IRQn_MCAN2                     37      /* MCAN2 IRQ */
#define IRQn_MCAN3                     38      /* MCAN3 IRQ */
#define IRQn_PTPC                      39      /* PTPC IRQ */
#define IRQn_PWM0                      40      /* PWM0 IRQ */
#define IRQn_QEI0                      41      /* QEI0 IRQ */
#define IRQn_SEI0_0                    42      /* SEI0[0] IRQ */
#define IRQn_MMC0                      43      /* MMC0 IRQ */
#define IRQn_TRGMUX0                   44      /* TRGMUX0 IRQ */
#define IRQn_PWM1                      45      /* PWM1 IRQ */
#define IRQn_QEI1                      46      /* QEI1 IRQ */
#define IRQn_SEI0_1                    47      /* SEI0[1] IRQ */
#define IRQn_MMC1                      48      /* MMC1 IRQ */
#define IRQn_TRGMUX1                   49      /* TRGMUX1 IRQ */
#define IRQn_RDC                       50      /* RDC IRQ */
#define IRQn_USB0                      51      /* USB0 IRQ */
#define IRQn_XPI0                      52      /* XPI0 IRQ */
#define IRQn_SDP                       53      /* SDP IRQ */
#define IRQn_PSEC                      54      /* PSEC IRQ */
#define IRQn_SECMON                    55      /* SECMON IRQ */
#define IRQn_RNG                       56      /* RNG IRQ */
#define IRQn_FUSE                      57      /* FUSE IRQ */
#define IRQn_ADC0                      58      /* ADC0 IRQ */
#define IRQn_ADC1                      59      /* ADC1 IRQ */
#define IRQn_DAC0                      60      /* DAC0 IRQ */
#define IRQn_DAC1                      61      /* DAC1 IRQ */
#define IRQn_ACMP_0                    62      /* ACMP_0 IRQ */
#define IRQn_ACMP_1                    63      /* ACMP_1 IRQ */
#define IRQn_SYSCTL                    64      /* SYSCTL IRQ */
#define IRQn_PGPIO                     65      /* PGPIO IRQ */
#define IRQn_PTMR                      66      /* PTMR IRQ */
#define IRQn_PUART                     67      /* PUART IRQ */
#define IRQn_PEWDG                     68      /* PEWDG IRQ */
#define IRQn_BROWNOUT                  69      /* BROWNOUT IRQ */
#define IRQn_PAD_WAKEUP                70      /* PAD_WAKEUP IRQ */
#define IRQn_DEBUG0                    71      /* DEBUG0 IRQ */
#define IRQn_DEBUG1                    72      /* DEBUG1 IRQ */

#endif /* HPM_SOC_IRQ_H */
